import gevent

def task(pid):
    gevent.sleep(0.5)  # 协程执行到这里会进行自动切换,不会等待完成再执行下一个
    print("Task %s done"%pid)

def sync():  # 同步执行10次task
    for i in range(1,10):
        task(i)

def async():  # 协程异步调度,一个线程里执行
    arrs = [gevent.spawn(task, i) for i in range(10)]
    gevent.joinall(arrs)

#sync()
async()  # 异步并发执行,效率高

